package org.dingyom.basics.service.impl;

import org.apache.logging.log4j.util.Strings;
import org.dingyom.basics.service.IBaiduAiService;
import org.dingyom.basics.util.AjaxResult;
import org.dingyom.basics.util.BaiduAuditUtils;
import org.springframework.stereotype.Service;

import java.util.Map;
@Service
public class BaiduAiServiceImpl implements IBaiduAiService {
    @Override
    public AjaxResult audit(String text, String imgUrl, String videoUrl) {
        AjaxResult result = AjaxResult.me();//存放返回数据
        StringBuilder sb = new StringBuilder();//用来拼接审核信息 存放进AjaxResult的message中

        if (!Strings.isEmpty(text)) {//参数text存在
            Map<String, Object> textAuditResult = BaiduAuditUtils.TextCensor(text);
            Boolean success = (Boolean) textAuditResult.get("success");//value是Object 需要强转
            String message = (String) textAuditResult.get("message");//value是Object 需要强转
            if (!success) {//失败才操作 就是审核不通过
                result.setSuccess(false);
                sb.append(text+":"+message);//不通过原因
            }
        }

        if (!Strings.isEmpty(imgUrl)){//参数imgUrl存在
            Map<String, Object> textAuditResult = BaiduAuditUtils.ImgCensor(imgUrl);
            Boolean success = (Boolean) textAuditResult.get("success");//value是Object 需要强转
            String message = (String) textAuditResult.get("message");//value是Object 需要强转
            if (!success) {//失败才操作 就是审核不通过
                result.setSuccess(false);
                sb.append(imgUrl+":"+message);//不通过原因
            }
        }
        if (!Strings.isEmpty(videoUrl)){//参数videoUrl存在
            //暂时没有视频审核需求 TODO
        }

        if(!result.isSuccess()){//如果有审核不通过的情况
            result.setMessage(sb.toString());
        }
        return result;
    }
}
